package com.yt.server.api;

import org.springframework.beans.factory.BeanFactory;
import org.springframework.core.io.support.ResourcePatternResolver;

import com.yt.server.api.action.IActionInvoker;
import com.yt.server.api.comm.ISessionManager;
import com.yt.server.threadpool.ThreadPoolManager;

public interface IContext extends ResourcePatternResolver {
	
	public static final String BEAN_NAME = "context";

	Object getBean(String beanId);

	boolean hasBean(String beanId);

	Object getCoreService(String beanId);
	
	void setActionInvoker(IActionInvoker actionInvoker);

	void setSessionManager(ISessionManager sessionManager);
	
	void setGlobalScope(IGlobalScope globalScope);

	BeanFactory getCoreContext();

	void setCoreContext(BeanFactory coreContext);
	
	void setThreadPoolManager(ThreadPoolManager threadPoolManager);
}
